In [1]:
# Auto-generated by leda
import leda
leda.set_interact_mode(leda.StaticIpywidgetsInteractMode())
In [2]:
# Auto-generated by leda
import os
from leda.vendor.static_ipywidgets.static_ipywidgets import interact as static_interact
static_interact.IMAGE_MANAGER = static_interact.InlineImageManager()
leda demo: matplotlib¶
In [3]:
import dataclasses
import leda
import matplotlib
import matplotlib.pyplot as plt
import numpy as np
import pandas as pd
In [4]:
leda.init("matplotlib")
plt.rcParams.update({"figure.max_open_warning": 0})
In [5]:
%%HTML
<!-- Auto-generated by leda -->
<h2>Table of Contents</h2>
<ol type='I'>
<li type='I'><a href='#leda-demo:-matplotlib'>leda demo: matplotlib</a></li>
<ol type='A'>
<li type='A'><a href='#Info'>Info</a></li>
<li type='A'><a href='#Data'>Data</a></li>
<li type='A'><a href='#Visualization'>Visualization</a></li>
<ol type='1'>
<li type='1'><a href='#Simple'>Simple</a></li>
<li type='1'><a href='#Objects-as-Params'>Objects as Params</a></li>
</ol>
</ol>
</ol>
Table of Contents
Info¶
Widgets
Use the %%interact expr0;expr1;... cell magic to set widgets for that cell.
Each expression is of the form x=y, where x becomes the local var of the cell and y can be a:
listto indicate choices for a dropdown widgettupleto indicate values for an int slider (start, stop, and optional step).
E.g.:
%%interact column=list(df.columns)
%%interact column=list(df.columns);mult=[1, 2, 3]
%%interact column=list(df.columns);window=(10, 50)
%%interact column=list(df.columns);window=(10, 50, 5)
Table of Contents
Use the %toc line magic to substitute with a table of contents in static mode.
Toggles
Click the Toggle input cells button at the bottom to reveal input cells.
Data¶
Using randomly generated data (with fixed seed).
In [6]:
df = pd.DataFrame(np.random.RandomState(42).rand(100, 10), columns=list("abcdefghij"))
Visualization¶
Simple¶
In [7]:
%%interact column=list(df.columns);mult=[1, 2, 3]
(df[[column]] * mult).plot(figsize=(15, 8), lw=2, title=f"column={column!r}, mult={mult}")
Generating results: 0%| | 0/30 [00:00<?, ?it/s]
Generating results: 17%|██████████████████████▏ | 5/30 [00:00<00:00, 49.90it/s]
Generating results: 40%|████████████████████████████████████████████████████▊ | 12/30 [00:00<00:00, 56.29it/s]
Generating results: 60%|███████████████████████████████████████████████████████████████████████████████▏ | 18/30 [00:00<00:00, 57.50it/s]
Generating results: 80%|█████████████████████████████████████████████████████████████████████████████████████████████████████████▌ | 24/30 [00:00<00:00, 48.00it/s]
Generating results: 100%|████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 30/30 [00:00<00:00, 50.97it/s]
Generating results: 100%|████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 30/30 [00:00<00:00, 51.64it/s]
Generating HTML: 0%| | 0/30 [00:00<?, ?it/s]
Generating HTML: 3%|████▌ | 1/30 [00:00<00:05, 5.17it/s]
Generating HTML: 7%|█████████ | 2/30 [00:00<00:05, 5.30it/s]
Generating HTML: 10%|█████████████▌ | 3/30 [00:00<00:04, 5.52it/s]
Generating HTML: 13%|██████████████████▏ | 4/30 [00:00<00:04, 5.70it/s]
Generating HTML: 17%|██████████████████████▋ | 5/30 [00:00<00:04, 5.63it/s]
Generating HTML: 20%|███████████████████████████▏ | 6/30 [00:01<00:04, 5.67it/s]
Generating HTML: 23%|███████████████████████████████▋ | 7/30 [00:01<00:03, 5.81it/s]
Generating HTML: 27%|████████████████████████████████████▎ | 8/30 [00:01<00:03, 5.69it/s]
Generating HTML: 30%|████████████████████████████████████████▊ | 9/30 [00:01<00:03, 5.67it/s]
Generating HTML: 33%|█████████████████████████████████████████████ | 10/30 [00:01<00:03, 5.81it/s]
Generating HTML: 37%|█████████████████████████████████████████████████▌ | 11/30 [00:01<00:03, 5.69it/s]
Generating HTML: 40%|██████████████████████████████████████████████████████ | 12/30 [00:02<00:03, 5.58it/s]
Generating HTML: 43%|██████████████████████████████████████████████████████████▌ | 13/30 [00:02<00:03, 5.60it/s]
Generating HTML: 47%|███████████████████████████████████████████████████████████████ | 14/30 [00:02<00:02, 5.47it/s]
Generating HTML: 50%|███████████████████████████████████████████████████████████████████▌ | 15/30 [00:02<00:02, 5.55it/s]
Generating HTML: 53%|████████████████████████████████████████████████████████████████████████ | 16/30 [00:02<00:02, 5.69it/s]
Generating HTML: 57%|████████████████████████████████████████████████████████████████████████████▌ | 17/30 [00:03<00:02, 5.69it/s]
Generating HTML: 60%|█████████████████████████████████████████████████████████████████████████████████ | 18/30 [00:03<00:02, 5.73it/s]
Generating HTML: 63%|█████████████████████████████████████████████████████████████████████████████████████▌ | 19/30 [00:03<00:01, 5.79it/s]
Generating HTML: 67%|██████████████████████████████████████████████████████████████████████████████████████████ | 20/30 [00:03<00:01, 5.72it/s]
Generating HTML: 70%|██████████████████████████████████████████████████████████████████████████████████████████████▌ | 21/30 [00:03<00:01, 5.73it/s]
Generating HTML: 73%|███████████████████████████████████████████████████████████████████████████████████████████████████ | 22/30 [00:03<00:01, 5.70it/s]
Generating HTML: 77%|███████████████████████████████████████████████████████████████████████████████████████████████████████▌ | 23/30 [00:04<00:01, 5.60it/s]
Generating HTML: 80%|████████████████████████████████████████████████████████████████████████████████████████████████████████████ | 24/30 [00:04<00:01, 5.64it/s]
Generating HTML: 83%|████████████████████████████████████████████████████████████████████████████████████████████████████████████████▌ | 25/30 [00:04<00:00, 5.73it/s]
Generating HTML: 87%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ | 26/30 [00:04<00:00, 5.69it/s]
Generating HTML: 90%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████▌ | 27/30 [00:04<00:00, 5.75it/s]
Generating HTML: 93%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ | 28/30 [00:04<00:00, 5.80it/s]
Generating HTML: 97%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████▌ | 29/30 [00:05<00:00, 5.42it/s]
Generating HTML: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 30/30 [00:05<00:00, 5.52it/s]
Generating HTML: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 30/30 [00:05<00:00, 5.64it/s]
Out[7]:
mult:
In [8]:
%%interact column=list(df.columns);window=(10, 50, 5)
ax = df[[column]].iloc[-window:].plot(figsize=(15, 8), lw=2,
title=f"column={column!r}, window={window}")
ax
Generating results: 0%| | 0/90 [00:00<?, ?it/s]
Generating results: 6%|███████▍ | 5/90 [00:00<00:01, 48.65it/s]
Generating results: 11%|██████████████▋ | 10/90 [00:00<00:02, 32.24it/s]
Generating results: 17%|██████████████████████ | 15/90 [00:00<00:01, 38.11it/s]
Generating results: 23%|██████████████████████████████▊ | 21/90 [00:00<00:01, 43.69it/s]
Generating results: 30%|███████████████████████████████████████▌ | 27/90 [00:00<00:01, 47.53it/s]
Generating results: 36%|██████████████████████████████████████████████▉ | 32/90 [00:00<00:01, 48.24it/s]
Generating results: 41%|██████████████████████████████████████████████████████▎ | 37/90 [00:00<00:01, 41.52it/s]
Generating results: 48%|███████████████████████████████████████████████████████████████ | 43/90 [00:00<00:01, 44.51it/s]
Generating results: 54%|███████████████████████████████████████████████████████████████████████▊ | 49/90 [00:01<00:00, 46.73it/s]
Generating results: 61%|████████████████████████████████████████████████████████████████████████████████▋ | 55/90 [00:01<00:00, 47.96it/s]
Generating results: 67%|████████████████████████████████████████████████████████████████████████████████████████ | 60/90 [00:01<00:00, 47.73it/s]
Generating results: 72%|███████████████████████████████████████████████████████████████████████████████████████████████▎ | 65/90 [00:01<00:00, 48.12it/s]
Generating results: 78%|██████████████████████████████████████████████████████████████████████████████████████████████████████▋ | 70/90 [00:01<00:00, 39.51it/s]
Generating results: 84%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████▍ | 76/90 [00:01<00:00, 43.17it/s]
Generating results: 91%|████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████▎ | 82/90 [00:01<00:00, 45.99it/s]
Generating results: 98%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ | 88/90 [00:01<00:00, 47.56it/s]
Generating results: 100%|████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 90/90 [00:01<00:00, 45.07it/s]
Generating HTML: 0%| | 0/90 [00:00<?, ?it/s]
Generating HTML: 1%|█▌ | 1/90 [00:00<00:17, 5.11it/s]
Generating HTML: 2%|███ | 2/90 [00:00<00:16, 5.21it/s]
Generating HTML: 3%|████▌ | 3/90 [00:00<00:16, 5.43it/s]
Generating HTML: 4%|██████ | 4/90 [00:00<00:15, 5.60it/s]
Generating HTML: 6%|███████▌ | 5/90 [00:00<00:14, 5.72it/s]
Generating HTML: 7%|█████████ | 6/90 [00:01<00:14, 5.74it/s]
Generating HTML: 8%|██████████▌ | 7/90 [00:01<00:14, 5.82it/s]
Generating HTML: 9%|████████████ | 8/90 [00:01<00:13, 5.87it/s]
Generating HTML: 10%|█████████████▌ | 9/90 [00:01<00:13, 5.84it/s]
Generating HTML: 11%|███████████████ | 10/90 [00:01<00:13, 5.91it/s]
Generating HTML: 12%|████████████████▌ | 11/90 [00:01<00:13, 5.90it/s]
Generating HTML: 13%|██████████████████ | 12/90 [00:02<00:13, 5.88it/s]
Generating HTML: 14%|███████████████████▍ | 13/90 [00:02<00:13, 5.89it/s]
Generating HTML: 16%|█████████████████████ | 14/90 [00:02<00:12, 5.95it/s]
Generating HTML: 17%|██████████████████████▌ | 15/90 [00:02<00:12, 5.93it/s]
Generating HTML: 18%|████████████████████████ | 16/90 [00:02<00:12, 5.89it/s]
Generating HTML: 19%|█████████████████████████▌ | 17/90 [00:02<00:12, 6.03it/s]
Generating HTML: 20%|███████████████████████████ | 18/90 [00:03<00:11, 6.09it/s]
Generating HTML: 21%|████████████████████████████▌ | 19/90 [00:03<00:11, 6.14it/s]
Generating HTML: 22%|██████████████████████████████ | 20/90 [00:03<00:11, 6.21it/s]
Generating HTML: 23%|███████████████████████████████▌ | 21/90 [00:03<00:11, 6.22it/s]
Generating HTML: 24%|█████████████████████████████████ | 22/90 [00:03<00:10, 6.29it/s]
Generating HTML: 26%|██████████████████████████████████▌ | 23/90 [00:03<00:10, 6.31it/s]
Generating HTML: 27%|████████████████████████████████████ | 24/90 [00:04<00:10, 6.31it/s]
Generating HTML: 28%|█████████████████████████████████████▌ | 25/90 [00:04<00:10, 6.30it/s]
Generating HTML: 29%|██████████████████████████████████████▉ | 26/90 [00:04<00:10, 6.35it/s]
Generating HTML: 30%|████████████████████████████████████████▌ | 27/90 [00:04<00:10, 6.10it/s]
Generating HTML: 31%|██████████████████████████████████████████ | 28/90 [00:04<00:09, 6.28it/s]
Generating HTML: 32%|███████████████████████████████████████████▌ | 29/90 [00:04<00:09, 6.35it/s]
Generating HTML: 33%|█████████████████████████████████████████████ | 30/90 [00:04<00:09, 6.36it/s]
Generating HTML: 34%|██████████████████████████████████████████████▌ | 31/90 [00:05<00:09, 6.40it/s]
Generating HTML: 36%|████████████████████████████████████████████████ | 32/90 [00:05<00:09, 6.44it/s]
Generating HTML: 37%|█████████████████████████████████████████████████▌ | 33/90 [00:05<00:08, 6.43it/s]
Generating HTML: 38%|███████████████████████████████████████████████████ | 34/90 [00:05<00:08, 6.28it/s]
Generating HTML: 39%|████████████████████████████████████████████████████▌ | 35/90 [00:05<00:10, 5.32it/s]
Generating HTML: 40%|██████████████████████████████████████████████████████ | 36/90 [00:06<00:09, 5.56it/s]
Generating HTML: 41%|███████████████████████████████████████████████████████▌ | 37/90 [00:06<00:09, 5.64it/s]
Generating HTML: 42%|█████████████████████████████████████████████████████████ | 38/90 [00:06<00:09, 5.48it/s]
Generating HTML: 43%|██████████████████████████████████████████████████████████▌ | 39/90 [00:06<00:09, 5.62it/s]
Generating HTML: 44%|████████████████████████████████████████████████████████████ | 40/90 [00:06<00:08, 5.77it/s]
Generating HTML: 46%|█████████████████████████████████████████████████████████████▌ | 41/90 [00:06<00:08, 5.90it/s]
Generating HTML: 47%|███████████████████████████████████████████████████████████████ | 42/90 [00:07<00:07, 6.00it/s]
Generating HTML: 48%|████████████████████████████████████████████████████████████████▌ | 43/90 [00:07<00:07, 6.11it/s]
Generating HTML: 49%|██████████████████████████████████████████████████████████████████ | 44/90 [00:07<00:07, 6.27it/s]
Generating HTML: 50%|███████████████████████████████████████████████████████████████████▌ | 45/90 [00:07<00:07, 6.32it/s]
Generating HTML: 51%|█████████████████████████████████████████████████████████████████████ | 46/90 [00:07<00:06, 6.36it/s]
Generating HTML: 52%|██████████████████████████████████████████████████████████████████████▌ | 47/90 [00:07<00:07, 6.10it/s]
Generating HTML: 53%|████████████████████████████████████████████████████████████████████████ | 48/90 [00:07<00:06, 6.14it/s]
Generating HTML: 54%|█████████████████████████████████████████████████████████████████████████▌ | 49/90 [00:08<00:06, 6.05it/s]
Generating HTML: 56%|███████████████████████████████████████████████████████████████████████████ | 50/90 [00:08<00:06, 6.02it/s]
Generating HTML: 57%|████████████████████████████████████████████████████████████████████████████▌ | 51/90 [00:08<00:06, 6.02it/s]
Generating HTML: 58%|█████████████████████████████████████████████████████████████████████████████▉ | 52/90 [00:08<00:06, 5.97it/s]
Generating HTML: 59%|███████████████████████████████████████████████████████████████████████████████▌ | 53/90 [00:08<00:06, 6.01it/s]
Generating HTML: 60%|█████████████████████████████████████████████████████████████████████████████████ | 54/90 [00:08<00:05, 6.05it/s]
Generating HTML: 61%|██████████████████████████████████████████████████████████████████████████████████▌ | 55/90 [00:09<00:05, 6.15it/s]
Generating HTML: 62%|████████████████████████████████████████████████████████████████████████████████████ | 56/90 [00:09<00:05, 6.15it/s]
Generating HTML: 63%|█████████████████████████████████████████████████████████████████████████████████████▌ | 57/90 [00:09<00:05, 6.14it/s]
Generating HTML: 64%|███████████████████████████████████████████████████████████████████████████████████████ | 58/90 [00:09<00:05, 6.22it/s]
Generating HTML: 66%|████████████████████████████████████████████████████████████████████████████████████████▌ | 59/90 [00:09<00:04, 6.27it/s]
Generating HTML: 67%|██████████████████████████████████████████████████████████████████████████████████████████ | 60/90 [00:09<00:04, 6.31it/s]
Generating HTML: 68%|███████████████████████████████████████████████████████████████████████████████████████████▌ | 61/90 [00:10<00:04, 6.24it/s]
Generating HTML: 69%|█████████████████████████████████████████████████████████████████████████████████████████████ | 62/90 [00:10<00:04, 6.39it/s]
Generating HTML: 70%|██████████████████████████████████████████████████████████████████████████████████████████████▌ | 63/90 [00:10<00:04, 6.46it/s]
Generating HTML: 71%|████████████████████████████████████████████████████████████████████████████████████████████████ | 64/90 [00:10<00:03, 6.53it/s]
Generating HTML: 72%|█████████████████████████████████████████████████████████████████████████████████████████████████▌ | 65/90 [00:10<00:03, 6.55it/s]
Generating HTML: 73%|███████████████████████████████████████████████████████████████████████████████████████████████████ | 66/90 [00:10<00:03, 6.44it/s]
Generating HTML: 74%|████████████████████████████████████████████████████████████████████████████████████████████████████▌ | 67/90 [00:11<00:03, 6.44it/s]
Generating HTML: 76%|██████████████████████████████████████████████████████████████████████████████████████████████████████ | 68/90 [00:11<00:03, 6.47it/s]
Generating HTML: 77%|███████████████████████████████████████████████████████████████████████████████████████████████████████▌ | 69/90 [00:11<00:03, 6.45it/s]
Generating HTML: 78%|█████████████████████████████████████████████████████████████████████████████████████████████████████████ | 70/90 [00:11<00:03, 6.38it/s]
Generating HTML: 79%|██████████████████████████████████████████████████████████████████████████████████████████████████████████▌ | 71/90 [00:11<00:02, 6.47it/s]
Generating HTML: 80%|████████████████████████████████████████████████████████████████████████████████████████████████████████████ | 72/90 [00:11<00:02, 6.51it/s]
Generating HTML: 81%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████▌ | 73/90 [00:11<00:02, 6.56it/s]
Generating HTML: 82%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████ | 74/90 [00:12<00:02, 6.51it/s]
Generating HTML: 83%|████████████████████████████████████████████████████████████████████████████████████████████████████████████████▌ | 75/90 [00:12<00:02, 6.45it/s]
Generating HTML: 84%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████ | 76/90 [00:12<00:02, 6.51it/s]
Generating HTML: 86%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████▌ | 77/90 [00:12<00:02, 6.48it/s]
Generating HTML: 87%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ | 78/90 [00:12<00:01, 6.43it/s]
Generating HTML: 88%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████████▌ | 79/90 [00:12<00:01, 6.37it/s]
Generating HTML: 89%|████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ | 80/90 [00:13<00:01, 6.44it/s]
Generating HTML: 90%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████▌ | 81/90 [00:13<00:01, 6.29it/s]
Generating HTML: 91%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ | 82/90 [00:13<00:01, 6.28it/s]
Generating HTML: 92%|████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████▌ | 83/90 [00:13<00:01, 6.37it/s]
Generating HTML: 93%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ | 84/90 [00:13<00:00, 6.39it/s]
Generating HTML: 94%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████▌ | 85/90 [00:13<00:00, 6.48it/s]
Generating HTML: 96%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ | 86/90 [00:13<00:00, 6.54it/s]
Generating HTML: 97%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████▌ | 87/90 [00:14<00:00, 6.53it/s]
Generating HTML: 98%|████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ | 88/90 [00:14<00:00, 6.51it/s]
Generating HTML: 99%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████▌ | 89/90 [00:14<00:00, 6.56it/s]
Generating HTML: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 90/90 [00:14<00:00, 6.60it/s]
Generating HTML: 100%|███████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 90/90 [00:14<00:00, 6.17it/s]
Out[8]:
window:
Objects as Params¶
In [9]:
@dataclasses.dataclass(frozen=True)
class Calculator:
def calc(self, df: pd.DataFrame) -> pd.DataFrame:
raise NotImplementedError
@dataclasses.dataclass(frozen=True)
class CumSumCalculator(Calculator):
def calc(self, df: pd.DataFrame) -> pd.DataFrame:
return df.cumsum()
@dataclasses.dataclass(frozen=True)
class EWMMeanCalculator(Calculator):
com: float
def calc(self, df: pd.DataFrame) -> pd.DataFrame:
return df.ewm(com=self.com).mean()
calcs = [CumSumCalculator(), EWMMeanCalculator(com=5), EWMMeanCalculator(com=10)]
In [10]:
%%interact column_group=["abc", "def", "ghij"];calc=calcs
calced_df = calc.calc(df[list(column_group)])
calced_df.plot(figsize=(15, 8), lw=2, title=f"column_group={column_group!r}, calc={calc}")
Generating results: 0%| | 0/9 [00:00<?, ?it/s]
Generating results: 67%|█████████████████████████████████████████████████████████████████████████████████████████▎ | 6/9 [00:00<00:00, 53.82it/s]
Generating results: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 9/9 [00:00<00:00, 53.98it/s]
Generating HTML: 0%| | 0/9 [00:00<?, ?it/s]
Generating HTML: 11%|███████████████▏ | 1/9 [00:00<00:01, 5.99it/s]
Generating HTML: 22%|██████████████████████████████▍ | 2/9 [00:00<00:01, 6.04it/s]
Generating HTML: 33%|█████████████████████████████████████████████▋ | 3/9 [00:00<00:01, 5.90it/s]
Generating HTML: 44%|████████████████████████████████████████████████████████████▉ | 4/9 [00:00<00:00, 5.59it/s]
Generating HTML: 56%|████████████████████████████████████████████████████████████████████████████ | 5/9 [00:00<00:00, 5.61it/s]
Generating HTML: 67%|███████████████████████████████████████████████████████████████████████████████████████████▎ | 6/9 [00:01<00:00, 5.41it/s]
Generating HTML: 78%|██████████████████████████████████████████████████████████████████████████████████████████████████████████▌ | 7/9 [00:01<00:00, 5.46it/s]
Generating HTML: 89%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████▊ | 8/9 [00:01<00:00, 5.58it/s]
Generating HTML: 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 9/9 [00:01<00:00, 5.48it/s]
Generating HTML: 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 9/9 [00:01<00:00, 5.58it/s]
Out[10]:
column_group:
In [11]:
# Auto-generated by leda
import leda
leda.show_input_toggle()
Out[11]:
In [12]:
# Auto-generated by leda
import leda
leda.show_std_output_toggle()
Out[12]: